﻿using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;

namespace CreateMenu
{
    public partial class Parentesco : Form
    {
        #region variables
        private int accionId = 0;
        private string nombreAccion = "";
        #endregion
        #region Metodos Privados
        private void populateCombobox()
        {
            string tipo = "SMCVA";
            this.CmbFiltro.DataSource = tipo.ToArray();
        }
        private void bindGrid(string tipo)
        {
            this.GrvAcciones.DataSource = DataAcces.AccionData.getListAcciones(tipo).Tables[0];
        }
        #endregion
        public Parentesco()
        {
            InitializeComponent();
        }
        public Parentesco(int accion, string nombre)
        {
            InitializeComponent();
            this.accionId = accion;
            this.nombreAccion = nombre;
        }

        private void Parentesco_Load(object sender, EventArgs e)
        {
            populateCombobox();
            bindGrid("S");
            if (accionId != 0)
            {
                this.TxtAccion.Text = this.accionId.ToString();
                this.TxtNAccion.Text = this.nombreAccion;
            }            
        }

        private void CmbFiltro_SelectedIndexChanged(object sender, EventArgs e)
        {
            switch (CmbFiltro.SelectedValue.ToString())
            {
                case "M":
                    bindGrid("M");
                    break;
                case "C":
                    bindGrid("C");
                    break;
                case "V":
                    bindGrid("V");
                    break;
                case "A":
                    bindGrid("A");
                    break;
                default:
                    break;
            }
        }

        private void GrvAcciones_CellClick(object sender, DataGridViewCellEventArgs e)
        {
            this.TxtPadre.Text = this.GrvAcciones.Rows[e.RowIndex].Cells[0].Value.ToString();
        }

        private void BtnRegistrar_Click(object sender, EventArgs e)
        {
            if (string.IsNullOrEmpty(this.TxtAccion.Text) || string.IsNullOrEmpty(this.TxtPadre.Text))
            {
                MessageBox.Show("Los campos accion y padre no deben de quedar vacios","Informacion",MessageBoxButtons.OK,MessageBoxIcon.Information);
                return;
            }
            string resultado =
            DataAcces.AccionData.registrarParentesco(Convert.ToInt32(this.TxtAccion.Text), Convert.ToInt32(this.TxtPadre.Text));
            if (resultado.Equals("ExItO",StringComparison.OrdinalIgnoreCase))
            {
                MessageBox.Show("Accion registrada correctamente","Informacion",MessageBoxButtons.OK,MessageBoxIcon.Information);
                this.Dispose();
            }
            else
            {
                MessageBox.Show(resultado,"Error",MessageBoxButtons.OK,MessageBoxIcon.Error);
            }
        }
    }
}
